<script>
    // //数组赋值
    // var arr = [1, 2, 3, 45]

    // arr[4] = "我是一个新的值"

    // arr[0]='被更改了'
    // //不要用下面这种方法复制,因为它会打乱数组有序的索引
    // arr['abc']='又来了一个'



    // ------------华丽的分割线--------------
    // 数组的方法
    // var arr = ['山河令', '陈情令', '天官赐福']
    //耽美
    // push 可以往数组的末尾添加一个或者多个元素 返回值是数组添加元素之后的长度 它会改变原数组
    // arr.push('魔道祖师', '剑来', '雪中悍刀行')

    // pop 删除数组末尾的一项 它的返回值是被删除的元素 会改变原数组
    // var returns = arr.pop()
    // console.log(returns); //天官赐福

    // shift 会删除数组中的第一个元素 返回值是被删除的元素 会改变原数组
    // var returns = arr.shift()
    // console.log(returns);//山河令

    // unshift 往数组的最前面添加一个或者多个元素 返回值是添加元素之后的数组的长度 会改变原数组
    // var returns = arr.unshift('葫芦娃', '吸氧羊')
    // console.log(returns); //5

    // reverse 将数组进行翻转 会改变原数组
    // arr.reverse()
// arr.reverse()
    // join 括号中传入一个分隔符,这个分隔符会将数组中的每一项隔开,并且最后将数组转换为字符串,并且返回
    // 不会改变原数组
    // var str = arr.join("")

    // concat 让一个数组连接一个或者多个数组,可以这些数组的元素合并成一个新的数组,并且返回 arr.concat(arr2)
    // 不会改变原数组
    // var arr2 = ['王一博', '易烊千玺', '张建军'];
    // var arr3 = ['秋天不回来', '求佛', '老鼠爱大米']
    // var newArr = arr.concat(arr2, arr3)
    // console.log(newArr);

    // splice(开始删除的索引值,删除的数量,'替换的元素') 这个方法主要用于去删除数组中的指定的元素,返回值是一个数组,数组中的元素就是被删除的元素,会对原数组进行改变
    // var arr = ['伊索寓言', '掩耳盗铃', '两小儿辩日', '鹅鹅鹅']
    // var returns = arr.splice(1, 2, 'xxx')
    // console.log(returns);

    // map 映射 主要用于对数组中数据的处理,将数据处理成符合预期的数据结构,不会改变原数组,会返回一个新数组
    // var salary = [2000, 2500, 3000, 30000];
    // //item每个元素 index数组的索引 array 数组本身
    // var newSalary = salary.map(function (item, index, array) {
    //     // console.log(array);
    //     return item * 2
    // })

    // console.log(newSalary);

    // filter 过滤 不会改变原数组,返回一个新数组
    //思路:将数组中<30000的元素删掉

    var newSalary = salary.filter(function (item, index, array) {
        return item >= 30000 //返回大于或者等于30000的元素
    })

    console.log(newSalary);

</script>